Handle GDK_INCLUDE_INFERIORS subwindow_mode.
authorElliot Lee <sopwith@src.gnome.org>
Mon, 7 Aug 2000 23:00:38 +0000 (23:00 +0000)
committerElliot Lee <sopwith@src.gnome.org>
Mon, 7 Aug 2000 23:00:38 +0000 (23:00 +0000)
Handle GDK_INCLUDE_INFERIORS subwindow_mode.

Call gobject finalize routine in gdk_gc_finalize.

Unrememberable etcs.

gdk/linux-fb/gdkdrawable-fb2.c
gdk/linux-fb/gdkgc-fb.c
gdk/linux-fb/gdkinput-ps2.c
gdk/linux-fb/gdkpango-fb.c

index 3384ad49bd7933971ea6284524af51b76c72388f..413c4ab785b25cba96a00f4fe34936d8d9050b44 100644 (file)
@@ -209,6 +209,9 @@ gdk_fb_clip_region(GdkDrawable *drawable, GdkGC *gc, gboolean do_clipping, gbool
   if(skipit)
     return real_clip_region;
 
+  if(gc && GDK_GC_FBDATA(gc)->values.subwindow_mode == GDK_INCLUDE_INFERIORS)
+    do_children = FALSE;
+
   if(do_clipping && GDK_IS_WINDOW(GDK_DRAWABLE_FBDATA(drawable)->wrapper) && GDK_WINDOW_P(GDK_DRAWABLE_P(drawable)->wrapper)->mapped && !GDK_WINDOW_P(GDK_DRAWABLE_FBDATA(drawable)->wrapper)->input_only)
     {
       GdkWindow *parentwin, *lastwin;
index 3e166cf81f0c70df7ccc1ea1ca35c82e921a529d..fe55f6d4473bad1a80b081f25ad7ca5fa5aca8b4 100644 (file)
@@ -100,6 +100,8 @@ gdk_fb_gc_finalize (GObject *obj)
     gdk_pixmap_unref(GDK_GC_FBDATA (gc)->values.stipple);
   if (GDK_GC_FBDATA (gc)->values.tile)
     gdk_pixmap_unref(GDK_GC_FBDATA (gc)->values.tile);
+
+  G_OBJECT_CLASS (parent_class)->finalize (obj);
 }
 
 static void
index 03f40bcd3b2f1414c61162678ac4852f92f1c68a..dcce152a4fb98bf6a1709f7e1141a57affa30cd8 100644 (file)
@@ -922,7 +922,7 @@ keyboard_get_state(Keyboard *k)
   return retval;
 }
 
-static GdkWindow *
+GdkWindow *
 gdk_window_find_focus(void)
 {
   if(_gdk_fb_keyboard_grab_window)
index 08c005dd6dd7b685a61e9bbdd28f70effa0fcaa5..fba3fcad78db0cc71a95ca75216a7bc07f3fd715 100644 (file)
@@ -472,6 +472,7 @@ pango_fb_font_get_glyph_info(PangoFont *font, PangoGlyph glyph)
   FT_GlyphSlot g;
   PangoRectangle *my_logical_rect, *my_ink_rect;
   FT_Face ftf;
+  gboolean free_buffer = FALSE;
 
   ftf = fbf->ftf;
 
@@ -506,6 +507,7 @@ pango_fb_font_get_glyph_info(PangoFont *font, PangoGlyph glyph)
        g_error("Glyph render failed");
 
       renderme = &bgy->bitmap;
+      free_buffer = TRUE;
     }
   else
     renderme = &g->bitmap;